﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using CapaNegocio;
using Excepciones;

namespace CapaWeb
{
    public partial class MenuAdmin : System.Web.UI.Page
    {
        private Admin admin = new Admin();

        protected void Page_Load(object sender, EventArgs e)
        {
            GridView1.Visible = false;
            Label2Usuario.Text = Session["usuario"].ToString();
        }

        //BOTON QUE LISTA LA CANTIDAD DE CLIENTES QUE ELIGIERON CADA PREMIO
        //POR CADA PREMIO CUENTO CUANTOS CLIENTES LO ELIGIERON
        protected void Button1CantCli_Click(object sender, EventArgs e)
        {
            try
            {
                DataSet ds = new DataSet();
                ds = admin.listarClientesPorPremio();
                GridView1.Visible = true;

                if (ds.Tables[0].Rows.Count > 0)
                {
                    //devolvio algo la consulta
                    string comentario = "Listado de las cantidad de clientes que eligieron cada premio: ";
                    Label1Comentario.Text = comentario;
                    GridView1.DataSource = ds.Tables[0];
                    GridView1.DataBind();
                }
                else
                {
                    //no devolvio registros
                    string msj = "ERROR: lista de retiro de premios vacia. ";
                    Response.Write("<script lenguaje=\"javascript\"> alert('" + msj + "') </script> ");
                }
            }
            catch (NullReferenceException ex)
            {
            }
            catch (HttpException ex)
            {
            }
        }

        //BOTON QUE LISTA EL STOCK DE CADA PREMIO
        protected void Button2StockPre_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable dt = new DataTable();
                string unaTabla = "premio";
                dt = admin.listar(unaTabla);

                GridView1.Visible = true;

                if (dt.Rows.Count > 0)
                {
                    //devuelve algo la consulta
                    string comentario = "Listado de premios con sus correspondientes datos: ";
                    Label1Comentario.Text = comentario;
                    GridView1.DataSource = dt;
                    GridView1.DataBind();
                }
                else
                {
                    //no devolvio registros
                    string msj = "ERROR: problemas en la consulta. ";
                    Response.Write("<script lenguaje=\"javascript\"> alert('" + msj + "') </script> ");
                }
            }
            catch (NullReferenceException ex)
            {
            }
            catch (HttpException ex)
            {
            }

        }

        //BOTON QUE LISTA LA CANTIDAD DE CLIENTES QUE TIENEN PUNTOS ENTRE EL RANGO 0 A 100 INCLUSIVE DE PUNTOS ACUMULADOS
        protected void Button3CliRan1_Click(object sender, EventArgs e)
        {
            try
            {
                DataSet ds = new DataSet();
                ds = admin.listarClientesRango1();

                GridView1.Visible = true;

                if (ds.Tables[0].Rows.Count > 0)
                {
                    //devuelve algo
                    string comentario = "Cantidad de clientes que tienen entre 0 y 100 puntos acumulados: ";
                    Label1Comentario.Text = comentario;
                    GridView1.DataSource = ds.Tables[0];
                    GridView1.DataBind();
                }
                else
                {
                    //no devolvio registros
                    string msj = "ERROR: problemas en la consulta. ";
                    Response.Write("<script lenguaje=\"javascript\"> alert('" + msj + "') </script> ");
                }
            }
            catch (HttpException ex)
            {
            }
            catch (NullReferenceException ex)
            {
            }
        }

        //BOTON QUE LISTA LA CANTIDAD DE CLIENTES QUE TIENEN PUNTOS ENTRE EL RANGO 101 A 1000 INCLUSIVE DE PUNTOS ACUMULADOS
        protected void Button4CliRan2_Click(object sender, EventArgs e)
        {
            try
            {
                DataSet ds = new DataSet();
                ds = admin.listarClientesRango2();

                GridView1.Visible = true;

                if (ds.Tables[0].Rows.Count > 0)
                {
                    //devuelve algo
                    string comentario = "Cantidad de clientes que tienen entre 101 y 1000 puntos acumulados: ";
                    Label1Comentario.Text = comentario;
                    GridView1.DataSource = ds.Tables[0];
                    GridView1.DataBind();
                }
                else
                {
                    //no devolvio registros
                    string msj = "ERROR: problemas en la consulta. ";
                    Response.Write("<script lenguaje=\"javascript\"> alert('" + msj + "') </script> ");
                }
            }
            catch (HttpException ex)
            {
            }
            catch (NullReferenceException ex)
            {
            }
        }

        //BOTON QUE LISTA LA CANTIDAD DE CLIENTES QUE TIENEN MAS DE 1000 PUNTOS ACUMULADOS
        protected void Button5CliRan3_Click(object sender, EventArgs e)
        {
            try
            {
                DataSet ds = new DataSet();
                ds = admin.listarClientesRango3();

                GridView1.Visible = true;

                if (ds.Tables[0].Rows.Count > 0)
                {
                    //devuelve algo
                    string comentario = "Cantidad de clientes que tienen más de 1000 puntos acumulados: ";
                    Label1Comentario.Text = comentario;
                    GridView1.DataSource = ds.Tables[0];
                    GridView1.DataBind();
                }
                else
                {
                    //no devolvio registros
                    string msj = "ERROR: problemas en la consulta. ";
                    Response.Write("<script lenguaje=\"javascript\"> alert('" + msj + "') </script> ");
                }
            }
            catch (HttpException ex)
            {
            }
            catch (NullReferenceException ex)
            {
            }
        }

        //METODO QUE ENVIA EMAIL A CLIENTES
        protected void Button1_Click(object sender, EventArgs e)
        {
            Response.Redirect("MenuAvisoEmail.aspx");
        }









    }
}
